<template>
  <!-- 创建一个轮播图组件 -->
<el-carousel trigger="click" height="auto" ref="banner">
    <!-- 遍历bannerData数组，为每个元素创建一个轮播图项 -->
    <el-carousel-item v-for="item in bannerData" :key="item.id">
      <!-- 创建一个图片组件，将src属性绑定到item.banner_url，width属性设置为100% -->
      <el-image :src="item.banner_url" width="100%"></el-image>
    </el-carousel-item>
  </el-carousel>
</template>

<script setup>
import { defineProps, ref,onMounted  } from 'vue'
// 定义延时时间常量（可选）
const SET_ACTIVE_ITEM_DELAY = 100;
// 定义一个ref类型的常量，用于获取轮播图组件实例
const banner = ref()
// 定义一个名为props的常量，用于接收父组件传递的属性
const props = defineProps({
  // 接收一个名为bannerData的数组类型的属性
  bannerData: Array
})
// 设置轮播图激活页
// 在组件挂载后，设置一个定时器，100毫秒后将banner的激活项设置为第一个
onMounted(() => {
  setTimeout(() => {
    if (banner.value && typeof banner.value.setActiveItem === 'function') {
    banner.value.setActiveItem(0)
      }
  }, SET_ACTIVE_ITEM_DELAY)
})

</script>

<style scoped>
.el-image{
  width: 100%;
}
.el-carousel__item {
  width: 100vw;
  height: calc(5600vw/128);
}

</style>